package com.example.dao;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.example.pojo.Menu;
import com.example.pojo.User;

import java.util.List;

public interface UserDao {
    // 查询全部
    List<User> getAllUsers();

    // 分页查询
    IPage<User> getUsersPage(int currentPage, int limit);

    // 根据用户名模糊查询用户
    IPage<User> getUserByname(int currentPage, int limit,String username);

    // 根据用户名查询用户
    User getUserBynameOne(String username);

    // 登录
    boolean login(String uname,String pwd);

    // 添加用户
    int addUser(User user);

    // 修改状态
    int toggleStatus(int uid,int checked);

    // 删除用户
    int deleteUser(int uid);

    // 通过名字查询改用户状态
    boolean getStateByName(String uname);

    // 查询用户拥有的菜单权限
    List<Menu> getUserHaveMenu(Integer uid);

    // 批量删除
    int batchDeleteUser(List<Integer> ids);

    // 修改用户的状态
    int changeStatus(int uId,int uStatus);
}
